package com.hzeport.bgs22emduty.vo.dudyScheduleSet;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.hzeport.bgs22emduty.entity.BasePersonInfo;
import com.hzeport.bgs22emduty.entity.DutyScheduleInfo;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

public class DudyScheduleListVO {

    //日常排班
    private DailyDudy dailyDudy;

    //日常排班w
    private WeekendDudy weekendDudy;

    //节假日排班
    private HolidayAndVacationsDudy holidayAndVacationsDudy;

    //重要日期排班
    private ImportantDayDudy importantDayDudy;

    public DailyDudy getDailyDudy() {
        return dailyDudy;
    }

    public void setDailyDudy(DailyDudy dailyDudy) {
        this.dailyDudy = dailyDudy;
    }

    public HolidayAndVacationsDudy getHolidayAndVacationsDudy() {
        return holidayAndVacationsDudy;
    }

    public void setHolidayAndVacationsDudy(HolidayAndVacationsDudy holidayAndVacationsDudy) {
        this.holidayAndVacationsDudy = holidayAndVacationsDudy;
    }

    public ImportantDayDudy getImportantDayDudy() {
        return importantDayDudy;
    }

    public void setImportantDayDudy(ImportantDayDudy importantDayDudy) {
        this.importantDayDudy = importantDayDudy;
    }

    public WeekendDudy getWeekendDudy() {
        return weekendDudy;
    }

    public void setWeekendDudy(WeekendDudy weekendDudy) {
        this.weekendDudy = weekendDudy;
    }

    public static class DailyDudy {

        private List<DudyTemplate> dudyTemplate;

        private List<DudyTemplate> lineTemplate;

        public List<DudyTemplate> getDudyTemplate() {
            return dudyTemplate;
        }

        public void setDudyTemplate(List<DudyTemplate> dudyTemplate) {
            this.dudyTemplate = dudyTemplate;
        }

        public List<DudyTemplate> getLineTemplate() {
            return lineTemplate;
        }

        public void setLineTemplate(List<DudyTemplate> lineTemplate) {
            this.lineTemplate = lineTemplate;
        }
    }

    public static class WeekendDudy {

        private List<DudyTemplate> dudyTemplate;

        private List<DudyTemplate> lineTemplate;

        public List<DudyTemplate> getDudyTemplate() {
            return dudyTemplate;
        }

        public void setDudyTemplate(List<DudyTemplate> dudyTemplate) {
            this.dudyTemplate = dudyTemplate;
        }

        public List<DudyTemplate> getLineTemplate() {
            return lineTemplate;
        }

        public void setLineTemplate(List<DudyTemplate> lineTemplate) {
            this.lineTemplate = lineTemplate;
        }
    }

    public static class HolidayAndVacationsDudy{

        private List<DudyTemplate> dudyTemplate;
        private List<DudyTemplate> lineTemplate;

        public List<DudyTemplate> getDudyTemplate() {
            return dudyTemplate;
        }

        public void setDudyTemplate(List<DudyTemplate> dudyTemplate) {
            this.dudyTemplate = dudyTemplate;
        }

        public List<DudyTemplate> getLineTemplate() {
            return lineTemplate;
        }

        public void setLineTemplate(List<DudyTemplate> lineTemplate) {
            this.lineTemplate = lineTemplate;
        }
    }

    public static class ImportantDayDudy{

        private List<DudyTemplate> dudyTemplate;
        private List<DudyTemplate> lineTemplate;


        public List<DudyTemplate> getDudyTemplate() {
            return dudyTemplate;
        }

        public void setDudyTemplate(List<DudyTemplate> dudyTemplate) {
            this.dudyTemplate = dudyTemplate;
        }

        public List<DudyTemplate> getLineTemplate() {
            return lineTemplate;
        }

        public void setLineTemplate(List<DudyTemplate> lineTemplate) {
            this.lineTemplate = lineTemplate;
        }
    }



    public static class DudyTemplate{

        private String personStatistic;

        private String dudyDeptId;

        private String dudyDept;

        private Integer divisionLevelDudyNumber;

        private Integer sectionLevelDudyNumber;

        /**
         * $column.comments
         */
        @ApiModelProperty(value="$column.comments")
        @TableField(value ="ZS_SUB_COUNT")
        @JsonProperty(value = "zsSubCount")
        private Long zsSubCount;

        /**
         * $column.comments
         */
        @ApiModelProperty(value="$column.comments")
        @TableField(value ="ZS_MAIN_COUNT")
        @JsonProperty(value = "zsMainCount")
        private Long zsMainCount;

        /**
         * $column.comments
         */
        @ApiModelProperty(value="$column.comments")
        @TableField(value ="ZS_C_COUNT")
        @JsonProperty(value = "zsCCount")
        private Long zsCCount;

        /**
         * $column.comments
         */
        @ApiModelProperty(value="$column.comments")
        @TableField(value ="ZS_T_COUNT")
        @JsonProperty(value = "zsTCount")
        private Long zsTCount;

        /**
         * $column.comments
         */
        @ApiModelProperty(value="$column.comments")
        @TableField(value ="ZS_S_COUNT")
        @JsonProperty(value = "zsSCount")
        private Long zsSCount;

        private List<BasePersonInfo> basePersonInfos;

        private String sort;

        private Integer round;

        private Integer dRound;

        private List<BasePersonInfo> thisDeptPerson;

        public void setSort(String sort){
            this.sort=sort;
        }

        public String getSort(){
            return this.sort;
        }

        public List<BasePersonInfo> getBasePersonInfos() {
            return basePersonInfos;
        }

        public void setBasePersonInfos(List<BasePersonInfo> basePersonInfos) {
            this.basePersonInfos = basePersonInfos;
        }

        public String getDudyDeptId() {
            return dudyDeptId;
        }

        public void setDudyDeptId(String dudyDeptId) {
            this.dudyDeptId = dudyDeptId;
        }

        public String getDudyDept() {
            return dudyDept;
        }

        public void setDudyDept(String dudyDept) {
            this.dudyDept = dudyDept;
        }

        public Integer getDivisionLevelDudyNumber() {
            return divisionLevelDudyNumber;
        }

        public void setDivisionLevelDudyNumber(Integer divisionLevelDudyNumber) {
            this.divisionLevelDudyNumber = divisionLevelDudyNumber;
        }

        public Integer getSectionLevelDudyNumber() {
            return sectionLevelDudyNumber;
        }

        public void setSectionLevelDudyNumber(Integer sectionLevelDudyNumber) {
            this.sectionLevelDudyNumber = sectionLevelDudyNumber;
        }

        public Integer getRound() {
            return round;
        }

        public void setRound(Integer round) {
            this.round = round;
        }

        public String getPersonStatistic() {
            return personStatistic;
        }

        public void setPersonStatistic(String personStatistic) {
            this.personStatistic = personStatistic;
        }

        public List<BasePersonInfo> getThisDeptPerson() {
            return thisDeptPerson;
        }

        public void setThisDeptPerson(List<BasePersonInfo> thisDeptPerson) {
            this.thisDeptPerson = thisDeptPerson;
        }

        public Integer getdRound() {
            return dRound;
        }

        public void setdRound(Integer dRound) {
            this.dRound = dRound;
        }

        public Long getZsSubCount() {
            return zsSubCount;
        }

        public Long getZsMainCount() {
            return zsMainCount;
        }

        public void setZsMainCount(Long zsMainCount) {
            this.zsMainCount = zsMainCount;
        }

        public Long getZsCCount() {
            return zsCCount;
        }

        public void setZsCCount(Long zsCCount) {
            this.zsCCount = zsCCount;
        }

        public Long getZsTCount() {
            return zsTCount;
        }

        public void setZsTCount(Long zsTCount) {
            this.zsTCount = zsTCount;
        }

        public Long getZsSCount() {
            return zsSCount;
        }

        public void setZsSCount(Long zsSCount) {
            this.zsSCount = zsSCount;
        }

        public void setZsSubCount(Long zsSubCount) {
            this.zsSubCount = zsSubCount;
        }
    }
}
